package com.mezz.bones.im.gateway.service;

import com.mezz.bones.im.common.domain.user.ImUserConnectInfo;
import io.netty.channel.ChannelHandlerContext;

import java.util.List;

/**
 * @Author: zhuang
 * @Date: 2024/12/9 10:54
 * @Description: 用户在线状态服务 - redis存储层
 * @Version: 1.0
 **/

public interface  IUserStatusService {

    void online(ImUserConnectInfo userInfo, ChannelHandlerContext ctx, String ip);

    void offline(ImUserConnectInfo userInfo);

    void offline(String uid);

    List<ImUserConnectInfo> allOnlineDevice(String uid);

    boolean isOnline(ImUserConnectInfo userInfo);
}
